package cn.dai.service;

import cn.dai.pojo.User;
import cn.dai.service.model.Page;

import java.util.List;

/**
 * @author ArkD42
 * @file RBAC
 * @create 2020 - 06 - 11 - 11:03
 */
public interface UserService {

    /**
     * 创建一个新用户
     * @param user
     * @return
     */
    int addUser(User user);

    /**
     * 你号没了
     * @param id
     * @return
     */
    int delUser(Integer id);

    /**
     * 忘记密码了? 想改用户名了?
     * @param user
     * @return
     */
    int editUser(User user);

    /**
     * 让我康康这个用户信息
     * @param id
     * @return
     */
    User getUserById(Integer id);

    /**
     * 登陆验证用
     * @param name
     * @param password
     * @return
     */
    User getUserByInfo(String name,String password);

    /**
     * 用户是非常多的，所以不应该全返回，使用翻页获取
     * @param pageIndex
     * @return
     */
    Page<User> getUserPage(Integer pageIndex);

    /**
     * 根据传入的Uid数组，批量的删除
     * @param uidArray
     * @return
     */
    int delUserByUidArray(String[] uidArray);

    /**
     * 根据关键字来查询
     * @param keywords
     * @return
     */
    List<User> getUsersBySearch(String keywords);

}
